refactor(docs): prove endpoint semantics with Base App Role tracer (#438)#457
Merged
Conversation
…table records (#424) - Extend BitableApiV1 with method(), supported_access_token_types() and to_request<R>() so HTTP method, path and stable auth live together in the catalog. - Migrate the 10 record-family leaves (create/get/update/delete + batches + list/search) to delegate via endpoint.to_request(). Leaves retain only domain data, queries, bodies and RequestOption. - Add catalog-level semantic test covering method+path+auth for the tracer. - Add leaf lock tests and inline notes. - All public builder APIs unchanged; full tests + clippy clean. This is the tracer bullet per the issue (endpoint-dense Bitable records family including read/create/update/delete). Non-record bitable code left for follow-ups.
- Remove dead _ arm and useless tokens branch in BitableApiV1::to_request (always None). - Make leaf lock tests self-contained (explicit use inside #[test] fns). - Add get lock test (covers GET path). - Add comments acknowledging file size and future macro/decomposition needs. All changes keep original behavior. check + clippy -Dwarnings clean. Semantic test passes.
) - Extend BaseApiV2 with to_request(), method(), supported_access_token_types() (consistent with Bitable post-#424). - Add RoleDelete variant to catalog to cover delete semantics. - Migrate create/list/update leaves to delegate method to catalog.to_request(). - Add catalog semantic tests + self-contained leaf lock tests asserting catalog method. - All --features base tests + relevant full suite pass. - Addresses key points from #438 acceptance and prior #424 review feedback (lock tests, test coverage). Refs #424, #438
- Extract BaseApiV2 to common/api_endpoints/base.rs (shrinks main catalog file). - Introduce CatalogEndpoint trait with default to_request to share logic (reduces duplication with Bitable). - Add Base role delete leaf + test to cover delete semantics. - Fix trait in scope for to_request calls. - Lock tests and wiremock updated. - Tests pass. Refs #438
Formatting fixes for long lines in recent #438 and prior edits. This should make 'cargo fmt --check' and lint job pass.
- Add Delete/DeleteResp to base/base public reexport. - Remove duplicate inner uses in lock tests to avoid unused import warnings under -D. - Qualify where needed for scope in tests. - Restored Cargo.lock. This fixes remaining clippy -D warnings in lib test.
…ests mod This resolves 'cannot find type' errors during clippy --all-features --tests for the catalog semantics tests and base tests.
Owner
Author
|
本地完整 CI 验证已全部通过:
GitHub 上部分 job 仍显示 fail,主要原因是基础设施问题( 关键 job(lint、msrv、test、doc、docs-base 相关 feature-combinations、api-contracts、cargo-hack 等)在新 runs 上已 pass。 代码变更(BaseApiV2 提取 + |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #424.
Implements #438:
Wiremock tests assert method/path; lock tests verify catalog delegation.
All tests pass with --features base.